package cn.com.cifi.mars.service;

import cn.com.cifi.mars.bean.vo.returnPlan.ReturnPlanGroupVo;
import cn.com.cifi.mars.entity.ReturnPlanVersion;
import cn.com.cifi.mars.entity.ReturnPlanVersionCoefficient;
import cn.com.cifi.mars.entity.ReturnPlanVersionDetail;
import com.baomidou.mybatisplus.extension.service.IService;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * 回款计划版本明细表 服务类
 * </p>
 *
 * @author JingYuanXiang
 * @since 2020-11-06
 */
public interface ReturnPlanVersionDetailService extends IService<ReturnPlanVersionDetail> {

    //创建回款计划详情列表
    void createList(ReturnPlanVersion returnPlanVersion);
    //获取回款计划详情列表
    List<ReturnPlanVersionDetail> getListByVersionIdAndgroupId(String versionId, String groupId);
    //编辑保存
    void editSave(List<ReturnPlanVersionDetail> detailList);
    //获取回款计划编辑页面组团列表
    List<ReturnPlanGroupVo> getGroupList(String versionId);
    //获取年月回款合计
    BigDecimal getTotalReturnAmountByYearMonth(String yearMonth, List<ReturnPlanVersionDetail> returnPlanVersionDetailList);
    //获取当年回款合计
    BigDecimal getTotalReturnAmountByYear(String yearMonth, List<ReturnPlanVersionDetail> returnPlanVersionDetailList);
    //获取最末月的期末应收
    BigDecimal getLastMonthFinalReceivable(List<ReturnPlanVersionDetail> returnPlanVersionDetailList);
    //逻辑删除指定组团回款计划详情
    void delByGroupId(String versionId, String groupId, String alias);
}
